package com.yf.exam.modules.trainingarchives.coursetemplate.service.impl;

import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.yf.exam.core.api.dto.BaseIdReqDTO;
import com.yf.exam.core.api.dto.PagingReqDTO;
import com.yf.exam.modules.trainingarchives.coursetemplate.dto.req.OrgCourseTemplateReqDTO;
import com.yf.exam.modules.trainingarchives.coursetemplate.dto.resp.OrgCourseTemplateRespDTO;
import com.yf.exam.modules.trainingarchives.coursetemplate.entity.OrgCourseTemplate;
import com.yf.exam.modules.trainingarchives.coursetemplate.mapper.OrgCourseTemplateMapper;
import com.yf.exam.modules.trainingarchives.coursetemplate.service.OrgCourseTemplateService;
import com.yf.exam.modules.trainingarchives.headteacherlog.entity.HeadTeacherLog;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;

import java.time.LocalDate;
import java.time.LocalTime;

/**
* @author gengjiaxuan
* @description 针对表【org_course_template(课程模板表)】的数据库操作Service实现
* @createDate 2025-01-15 22:06:40
*/
@Service
public class OrgCourseTemplateServiceImpl extends ServiceImpl<OrgCourseTemplateMapper, OrgCourseTemplate>
    implements OrgCourseTemplateService {

    @Override
    public OrgCourseTemplateRespDTO getDetail(BaseIdReqDTO baseIdReqDTO) {
        return null;
    }

    @Override
    public Boolean add(OrgCourseTemplateReqDTO reqDTO) {
        OrgCourseTemplate orgCourseTemplate = new OrgCourseTemplate();
        BeanUtils.copyProperties(reqDTO, orgCourseTemplate);
        return this.save(orgCourseTemplate);
    }

    @Override
    public Boolean deleteById(String id) {
        LambdaQueryWrapper<OrgCourseTemplate> lambdaQueryWrapper = new LambdaQueryWrapper<OrgCourseTemplate>();
        lambdaQueryWrapper.eq(OrgCourseTemplate::getId, id);
        return this.remove(lambdaQueryWrapper);
    }

    @Override
    public Boolean update(OrgCourseTemplateReqDTO reqDTO) {
        OrgCourseTemplate orgCourseTemplate = new OrgCourseTemplate();
        BeanUtils.copyProperties(reqDTO, orgCourseTemplate);
        return this.updateById(orgCourseTemplate);
    }

    @Override
    public IPage<OrgCourseTemplateRespDTO> paging(PagingReqDTO<OrgCourseTemplateReqDTO> reqDTO) {
        return baseMapper.paging(reqDTO.toPage(),reqDTO.getParams());
    }
}




